Ten architect-level MCP questions for an agentic AI interview, each with a short model answer and a one-line version to say out loud.
Question: What problem does MCP actually solve, and why couldn't we just keep using regular function calling or plain REST API integrations with LLMs?
Answer: Without MCP, every AI application needs custom glue code for every tool. With M applications and N tools, that is M×N integrations, and a change on either side breaks that pairing. MCP is one standard protocol: each tool exposes one MCP server, and each application implements one MCP client. The effort drops from M×N to M+N.
Say it in one line: "MCP collapses M×N custom integrations into M+N by standardizing both sides."
Question: Walk through the architecture: the host, the client and the server, and how they relate. When a tool is "exposed" by a server, what does that mean under the hood?
Answer: There are three layers.
Every message between client and server is JSON-RPC, carried over stdio (local) or HTTP (remote).
What "exposed" means: the client makes a discovery call (list tools), and the server replies with a JSON schema per tool: name, description and input parameters. The host puts those schemas into the LLM's context so the model knows what it can call.
Say it in one line: "The host contains one client per server, they speak JSON-RPC, and exposing a tool means publishing its schema through discovery."
Question: In an agentic system, when the LLM decides to call a tool through MCP, who actually makes that decision, and what role does the server play versus the model?
Answer: The LLM decides. Discovery has already happened, so the tool schemas are in the model's context. The model reasons over the user's request and the available tools, then outputs a structured message: "call this tool with these arguments." It executes nothing itself.
It is a loop: the model proposes, the infrastructure executes, the result returns, the model reasons again.
Say it in one line: "The model decides what and when; the server executes. The model has no hands, the server has no judgment."
Question: What transport mechanisms does MCP use to move messages between client and server, and when would you pick one over the other?
Answer: Every MCP message is JSON-RPC, which is the message format, like an envelope. The transport is how the envelope travels. There are two.
It is not gRPC and not plain HTTPS alone. Say "stdio" and "HTTP with SSE" specifically.
Say it in one line: "JSON-RPC is the message format; stdio is the transport for local servers and HTTP with SSE for remote ones."
Question: What is the difference between stdio and HTTP+SSE, and what is the decision rule for a local versus a remote server?
Answer: The deciding factor is locality and who controls the server's lifecycle.
| stdio | HTTP + SSE (streamable HTTP) | |
|---|---|---|
| Server runs | Locally, as a subprocess of the host | Remotely, on another machine or a SaaS endpoint |
| How messages travel | Standard input and output pipes | HTTP POST for requests, SSE for streamed responses |
| Network needed | No | Yes |
| Typical use | Local file system or local database tool | A vendor's hosted MCP endpoint, a shared internal server |
Keep two ideas separate: stdio is the transport, and JSON-RPC is the message format that runs over either transport.
Say it in one line: "Same machine and lifecycle tied to the host: stdio. Different machine or a service I don't control: HTTP with SSE."
Question: What are the three primitives an MCP server can expose (tools, resources, prompts), and who controls each one?
Answer:
| Primitive | What it is | Who controls it | Example |
|---|---|---|---|
| Tool | An action the model invokes to do or compute something | The model | get_account_balance, send_email |
| Resource | Data to read, with no arguments or action | The application or user attaches it to context | A README, a log file, a database record |
| Prompt | A reusable, well-crafted prompt template the server ships | The user triggers it, often via a slash command | "Review this pull request for security issues" |
Why three? Tools let the model act. Resources supply context without the model going to fetch it. Prompts give users structured workflows.
Say it in one line: "Tools are for the model to act, resources are for the application to supply context, and prompts are for the user to trigger workflows."
Question: Walk through the lifecycle of an MCP connection: handshake, capability negotiation, discovery, execution, shutdown. What does each side learn about the other during initialization?
Answer: Four phases, in this order.
Mention the handshake first, unprompted. Capability negotiation is what makes the protocol extensible: new features can be added without breaking older clients or servers, because each side declares what it understands up front.
Say it in one line: "Handshake and capability negotiation, then discovery, then operation, then shutdown."
Question: What are the main security risks in MCP (prompt injection, tool poisoning, over-privileged servers, confused deputy), and how would you design guardrails?
Answer: The model decides what to call, but the server holds real, privileged access. All the risks live in that gap.
| Risk | What happens |
|---|---|
| Prompt injection | Untrusted content (an uploaded document, an email) carries hidden instructions like "transfer funds", and the model cannot reliably separate data from instructions. |
| Tool poisoning | A malicious or compromised server describes a tool innocently but does something harmful, or changes its description after being trusted (a "rug pull"). |
| Over-privileged servers | One server with full read-write database access, when the agent only needs balances, gives any bug or bad prompt a huge blast radius. |
| Confused deputy | The server acts with its own credentials on the model's request and does something the real end user was never authorized to do. The chain back to the human is broken. |
Guardrails:
Say it in one line: "For a bank I lead with confused deputy and human approval for money movement."
Question: You are an architect at a bank with about 20 internal systems. How would you structure the MCP servers, and where would you put authentication, authorization, audit logging and rate limiting? How would you handle tool sprawl in the model's context?
Answer:
User
| 1. asks question
v
+-------------------+
| Host (LLM + |
| MCP client) |
+---------+---------+
| 2. call + user token
v
+-------------------+
| MCP GATEWAY |
| 3. AuthN (OAuth) |
| 4. Rate limit |
| 5. Audit log |
| 6. Intent router |
+-+-----+-----+---+-+
| 7. load only the matching domain
v v v v
+----++-----++---++-----+
| MF ||Demat|| Ins||Loans|
| MCP|| MCP || MCP|| MCP |
+-+--++--+--++-+--++--+--+
| 8. AuthZ per account / row
v v v v
+-----------------------+
| Core systems (the 20) |
+-----------------------+
Say it in one line: "Draw MCP boundaries by domain, not by system, and solve tool sprawl with routing, not by dumping everything into context."
Question: How does MCP compare with plain function calling, REST APIs and agent-to-agent protocols like A2A? When would you choose MCP, and when would it be the wrong choice?
Answer: They sit at different layers, so they complement each other more than they compete.
| Option | What it is | How it relates to MCP |
|---|---|---|
| Function calling | A model-level feature: the LLM emits a structured call for a function you define in your own app code | Defines how the model asks for a call. MCP standardizes where the tools live and how any app discovers and invokes them. An MCP host usually still uses function calling underneath. |
| REST API | A service interface designed for developers and fixed integrations | MCP servers often wrap REST APIs, adding self-describing schemas, discovery and a uniform protocol so an agent can use them without custom glue. |
| A2A (agent-to-agent) | A protocol for agents to discover and delegate tasks to other agents | MCP connects an agent to tools and data; A2A connects an agent to other agents. They are used together. |
Choose MCP when:
It may be the wrong choice when:
Say it in one line: "Function calling is how the model asks, MCP is how tools are standardized and discovered, REST is what the tools often wrap, and A2A is how agents talk to each other."